查看原文
其他

本地差分隐私技术在联邦学习中的实践

Alvin vivo千镜 2022-11-05
本文的内容,作者曾在"CIS 2019 网络安全创新大会"中分享
近几年,隐私泄露事件层出不穷。


2018年发生十大数据泄露事件中,有近7.05亿个人数据记录遭泄露,数据泄露企业平均受到的损失高达 375万美元


隐私保护受到全社会越来越多的关注。发生这种现象的一个重要原因是我们正进入移动互联的新常态,隐私数据保护面临着巨大挑战


01移动互联新常态下的数据价值益增


人类社会从以信息为中心的IT时代走向了一个基于数据生存的时代我们每个人都不断地生成数据,数据又不断地被人收集利用


在移动互联时代,数据驱动已经成为现实,产品技术的创新和持续发展依赖于数据驱动


来自市场调研机构IDC的报告显示,数字化转型已经成为所有企业应对挑战的主要战略,移动互联是一个开放的充分竞争的市场,谁跑得快(数据获取能力强)+ 跑得稳(数据安全和隐私保护做得好),就有机会在移动互联的竞逐中脱颖而出。


数据带来巨大价值的同时也伴随的巨大的风险,数据安全和隐私保护能力缺位,黑产灰产发达个人信息保护成为全社会关注的问题消费者对数据安全和隐私保护的敏感度提高,数据安全和隐私保护保护成为竞争的着力点。


02AI+大数据 带来的机遇与挑战


提到数据的巨大潜能就不得不提AI技术。其标志性事件是alphago 战胜人类棋手, 其他重要应用领域包括无人驾驶、智慧医疗、数字金融等。


具体的AI技术也发展迅猛,包括深度学习、强化学习、迁移学习、联邦学习等机器学习领域。


AI+大数据为社会带来机遇的同时也带来很多挑战,数据来源多、壁垒重重,数据安全及个人隐私保护问题等。接下来,我们把焦点集中于联邦学习。文章后面部分的思路安排如下:一、介绍联邦学习的概念、原理和实现机制
二、分析联邦学习在隐私保护方面的问题三、我们如何利用最新的隐私保护技术缓解这个问题


03联邦学习的概念、原理和实现机制


关于联邦学习的产生背景我们要问几个问题:


Q: 数据的价值巨大,那数据主要产生于哪里呢?A: 边界,IOT时代, 数以亿计的边界设备不停的产生数据。


Q:数据能留在边界吗?A:如果数据可以留在设备内部, 在某些场景下可以改善时延、离线工作、提高电池寿命、 一定程度上还能缓解隐私泄露问题。 


Q: 如何缓解数据交换的困境?A: 要利用好大数据就必须做关联,如果数据留在边界、留在端侧,还要解决数据交换的困境。


Q: 什么是联邦学习?A: 联邦学习是一种机器学习技术,可在拥有本地数据样本的多个分散式边缘设备或服务器之间训练算法,而无需交换其原始数据样本。
  它的4个关键原则        
1. 只进行聚合服务端的工程师只能接触到汇总的报告。2. 暂时性报告不会将单个设备的报告持久化保存。3. 聚焦于收集端侧只提交需要的。4. 不存储个人数据即最原始的个人数据在整个过程中都不会离开端侧。
它的4个实现机制        
1. 数据不出设备:包括原始数据本地保存;删除老数据;加密静态数据等。2. 联邦聚合:服务端合并收集来自多个设备的报告。3. 安全聚合:针对手机,改进聚合过程中的安全性;参考论文:《Practical Secure Aggregation for Privacy-Preserving Machine Learning》2017。4. 联邦模型平均:针对手机,改进聚合过程中的性能;参考论文:《Communication-EfficientLearning of Deep Networks from Decentralized Data》2016。
我们这里只能非常简单的介绍了联邦学习的4个关键原则和4个实现机制。如需了解这些原则和机制的详情可以搜索“google federated learning”。


04联邦学习的训练过程


如图所示,联邦学习的训练过程如下: 1. 模型初始分发 2. 本地数据获取 3. 模型本地训练 4. 端侧结果汇总 5~6. 模型更新
通常在满足以下条件时可以考虑使用联邦学习:1. 对于模型,端侧数据比服务端数据相关性更强 2. 端侧的数据数据量大3. 用户的标签可以从交互过程中很自然地推导出来4. 在诸如金融、医疗、企业数据联盟等高价值场景中有很多企业已经开始探索有一些与联邦学习相近的概念,例如mapreduce、心式机器学习模型等,我们需要来做下对比。


首先,相似点是它们都是分布式的。不同点是,相比于mapreduce、中心式机器学习模型,在联邦学习过程中,服务端由于不能完全控制端侧设备,导致面临诸如受限的通信、断断续续的节点可用性、更大量的分布、数据不平衡、自相关(非独立同分布)数据等差别。  
        那么我们最关心的问题来了:联邦学习在隐私保护方面有没有什么问题?端侧不透露其原始数据是联邦学习在隐私保护方面的一项进步,但是当以常规方式训练模型时,其参数会揭示有关训练期间使用的数据的信息,实践表明,通过差分攻击仍可以以一定概率推测个人隐私。
主流的隐私保护技术,包括:数据加密(对称/非对称)、去标识化技术( 统计,抑制, 假名, 泛化等)都无法解决这个问题。
此时我们引入一种隐私保护技术,也是我们的主角本地差分隐私(简称LDP)其诞生的初衷是希望通过将隐私数据的控制权交还给用户来真正保护用户隐私。


05联邦学习在隐私保护方面的问题

本地差分隐私技术发展历程上图展示的是隐私攻守双方相互博弈的历程,关键节点是:1970:以概率论为代表的数学理论被用于保护隐私。2006:微软的科学家Dwork首次在论文中提出LDP,并从理论上证明其核心概念2016:以Apple公司为代表的工业界在不同业务场景下实践LDP。
LDP可以很好的抵御以差分攻击为代表的各类隐私攻击手段,那么什么是差分攻击呢?这里举一个简单的示例:例如:这是某医院病人患癌症的数据,1代表患病,0代表健康。为了保护数据,医院在将数据提供给相关分析机构的之前做了隐私保护措施:只容许进行统计类查询,而不能查询单个数据,但这样并不能真正保护用户隐私。攻击者可以实施差分攻击:假设函数f(i)=count(i), Alice是否患癌症=count(5)-count(4). 此时存在隐私泄露问题。


LDP又是如何保护用户隐私呢? 如果为f提供服从某种随机分布的噪声noise,f(i)=count(i)+noise.假设f(5)可能的输出来自于集合{2,2.5,3}中的某一值,f(4)也几乎以完全相同的概率输出{2,2.5,3}的某一值,此时攻击者无法通过f(5)–f(4)获得想要的结果。


06LDP原理的定义和实现


本地差分隐私业界实践很多公司都在尝试落地ldp。包括:Apple:表情分析


Uber:OpenDp开源项目
Google:Chrome设置使用分析
Microsoft:个人地理位置保护


07将隐私控制权交还给用户本地差分隐私+联邦学习


本地差分隐私+联邦学习联邦学习和本地差分隐私在背后的逻辑上有共通之处,就是希望在端侧做些事、将原始数据留在端侧来改进隐私保护的效果,获得消费者的认可。 


我们的目标是通过ldp 改进联邦学习的隐私保护能力,将数据更好地留在端侧,将隐私控制权交还给用户。

作为对比,先回顾一下联邦学习的训练过程:


首先, 我们的第一个实践是:针对单个终端数据源的差分隐私保护


通过如下4个步骤,在将原始数据提供给端侧机器学习模型之前就将其注入合适的噪声。1. 数据数值化在很多场景中数据是字符串格式,注入噪声的过程较为困难,我们的解决办法是通过统计、与阈值进行比较等方式将其结果转换为数值,之后再注入噪声。2. 阈值更新在整个联邦学习流程最初的设计阶段我们就为LDP过程预留了阈值更新接口,目前的方式是云端下发更新阈值。通过更新阈值调整对原始数据的采集结果。3. 隐私预算调整我们在端侧留有配置页面,用户可以调整LDP的两个核心参数来更改噪声的分布和强度,从而实现不同程度的隐私保护。4. 噪声注入在这个阶段,配置好的噪声与原始数据混合,因为噪声的随机性,这部分数据即使泄露也很难关联到个人,能在很大程度上抵御包括差分攻击在内的各种隐私攻击。




我们的第二个实践是:利用本地差分隐私技术隐藏单个终端的参与事实。



我们这样做的原因来自于一个想法:“我们不单保护了端侧产生的数据,我们甚至想能不能将'某个终端是否参与了联邦学习'这个事实也进行隐藏?”答案是肯定的。有两种实现方式:


1. 服务端选择端侧子集分发服务端(云端)以某种随机机制从端侧的全集中选择一个子集来进行本次的联邦学习。这种方式的优点是对于端侧用户透明,用户体验好;缺点是随机机制由服务端全权负责,用户有天然的不信任感。


2. 端侧参与度设置服务端每次都将端侧的全集纳入联邦学习的训练过程。端侧自己配置开关功能,该开关以某种随机分布打开和关闭。这种方式的优势隐私由用户自己保护,用户的隐私感受很好;缺点是由于每个用户对该功能的配置不同,没有统一、权威的协调者,整个系统可能陷入类似“公地悲剧”的均衡态,即每个人都希望自己少提供数据,其他人多提供数据,最终的结果就是大家都只提供很少的数据,结果导致整体联邦学习的准确性下降,带来用户体验的急剧下降。




我们的第三个实践是:利用差分隐私技术保护中心节点的模型数据


与实践一的思路和步骤类似,为了进一步提高用户对于整个联邦学习系统的信任,我们在服务端对汇总后的结果也注入噪声。


LDP与联邦学习结合后的整个系统,如下图所示:



为了带给用户更强的安全感提供了以下两个功能:1. 整个过程中LDP的参数都可以由用户自己配置;2. 运行阶段的数据实时采集过程、噪声注入过程都可以在我们的隐私中心查看。


08基于CIFAR-10数据集的实验结果
我们基于CIFAR-10数据集的实验结果:实验一:LDP对联邦学习准确度的影响



通常情况下注入LDP的噪声注入过程会影响联邦学习的准确性,但这里我们看到,在CIFAR-10数据集上的训练结果时准确度反而有一些提升。原因我们认为是目前LDP与场景的相关性较强。不同场景下LDP的使用会有较大差别,如何实现通用的LDP层也是目前一个重要的研究方向。


实验二: 不同client数量对联邦学习准确度的影响。



真实场景下手机端的联邦学习模型涉及的客户端数量非常大(很可能有上千万的端侧设备接入一个联邦学习系统),如何在这种情况下实现模型准确度与隐私保护的平衡也是一个难点。


关于LDP的应用和研究虽然初见成效但仍然任重道远,未来的相关的研究方向有:不同场景下差分隐私参数优化联邦学习的贡献激励机制复杂数据的差分隐私保护技术连续数据发布的差分隐私保护技术基于数据污染的隐私数据保护技术...



我们认为将数据留在端侧是隐私保护的重要发展方向,虽然过程中会遇到很多问题,但值得在这个方向上继续研究。 把产品卖给消费者很难, 更难的是从心底里认同产品的理念。 我们的一个目标是:用户拿到我们设备,在享受更智能体验的同时,从心底里认为“并不是某家公司懂我, 只是手上的这台设备懂我。
END





长按关注  最新动态


好文!在看吗?点一下鸭!



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存